package com.yuba.front.domain;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yuba.common.mybatis.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.util.Date;

/**
 * 前台用户对象 front_user
 *
 * @author modakai
 * @date 2024-11-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("front_user")
public class FrontUser extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 前台用户id
     */
    @TableId(value = "user_id")
    private Long userId;

    /**
     * 用户账号
     */
    private String username;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户类型
     */
    private String userType;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 性别；0男 1女
     */
    private String sex;

    /**
     * 头像的ossId值
     */
    private Long avatar;

    /**
     * 用户密码
     */
    @TableField(
        insertStrategy = FieldStrategy.NOT_EMPTY,
        updateStrategy = FieldStrategy.NOT_EMPTY,
        whereStrategy = FieldStrategy.NOT_EMPTY
    )
    private String password;

    /**
     * 账号状态 (0正常 1停用)
     */
    private String status;

    /**
     * 最后登录ip
     */
    private String loginIp;

    /**
     * 最后登录时间
     */
    private Date loginDate;

    /**
     * 备注
     */
    private String remark;


}
